package Code;

import java.util.ArrayList;

/*
    1.定义User类，包含空参、满参构造、以下成员变量及其get、set方法

        姓名 name（Sting 类型）

        年龄 age（int 类型）

        性别 sex（String 类型）

    2.定义测试类Test,完成以下要求：

        ①定义方法，public static ArrayList<User> getUser(ArrayList<User> users)
         获得年龄大于等于18岁，并且性别为 “男”的User，加入新的集合并返回。

        ②在main方法中完成以下功能：创建5个User对象并赋值，加入ArrayList<User>集合中
        调用getUser方法并接收，遍历返回的新集合输出新集合中所有元素信息
 */
class User{
    private String name,sex;
    private int age;
    //构造
    public User() {
    }
    public User(String name, String sex, int age) {
        this.name = name;
        this.sex = sex;
        this.age = age;
    }
    //set get
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

public class Test {
    public static void main(String[] args) {
        //创建5个User对象并赋值，加入ArrayList<User>集合中
        ArrayList<User> u = new ArrayList<>();
        u.add(new User("张三","男",18));
        u.add(new User("王花","女",23));
        u.add(new User("赵六","男",20));
        u.add(new User("谢脚","女",17));
        u.add(new User("李四","男",13));

        //调用getUser方法并接收
        ArrayList<User> nUsers = getUser(u);
        //遍历返回的新集合输出新集合中所有元素信息
        for (int i = 0; i < nUsers.size(); i++) {
            System.out.println(nUsers.get(i).getName() +"   " +nUsers.get(i).getAge() +"  " + nUsers.get(i).getSex());
        }
    }

    public static ArrayList<User> getUser(ArrayList<User> users){
        //创建新集合
        ArrayList<User> nUsers = new ArrayList<>();
        //年龄大于等于18岁，并且性别为 “男”的User
        for (int i = 0; i < users.size(); i++) {
            if ((users.get(i).getAge() >= 18) && (users.get(i).getSex().equals("男"))){
                // 加入新的集合
                nUsers.add(users.get(i));
            }
        }
        //返回
        return nUsers;
    }
}
